package eu.telecom.sudparis.dpwsim.view.tools; import java.io.IOException; import java.util.HashMap; import java.util.Iterator; import javax.swing.JLabel; import javax.swing.table.DefaultTableModel; import eu.telecom.sudparis.dpws.GenericDevice; import eu.telecom.sudparis.dpwsim.upgrade.DPWSimDevice; import eu.telecom.sudparis.dpwsim.view.DPWSimMainWindow; /** * DPWS Utilities * * @author Son Han * @date 2013/09/20 * @version 2.0 */ public class DPWSUtilities { public static String addOperationsInfo(String deviceinfo, DefaultTableModel ops){ if (ops != null){ for (int i = 0; i < ops.getRowCount(); i++){ String opName = (String) ops.getValueAt(i, 0); String param = (String) ops.getValueAt(i, 1); String status = (String) ops.getValueAt(i, 2); deviceinfo += "\nOPERATION," + opName + "," + param + "," + status; } } return deviceinfo; } public static String addEventsInfo(String deviceinfo, DefaultTableModel evts){ if (evts != null){ for (int i = 0; i < evts.getRowCount(); i++){ String evtName = (String) evts.getValueAt(i, 0); String param = (String) evts.getValueAt(i, 1); String message = (String) evts.getValueAt(i, 2); String freq = (String) evts.getValueAt(i, 3); deviceinfo += "\nEVENT," + evtName + "," + param + "," + message + "," + freq; } } return deviceinfo; } public static void clearDevices(DPWSimMainWindow main) { Iterator<DPWSimDevice> itr = main.devices.iterator(); while (itr.hasNext()) { DPWSimDevice dv = itr.next(); if (dv.getDevice().isRunning()){ try { dv.getDevice().stop(); } catch (IOException e1) { e1.printStackTrace(); } } } main.devices.clear(); Iterator<DPWSimDevice> itrlabel = main.devices.iterator(); while (itrlabel.hasNext()) { JLabel label = itrlabel.next(); main.remove(label); } main.devices.clear(); main.revalidate(); main.repaint(); } public static HashMap<String, String> getDeviceInfo(GenericDevice device){ HashMap<String, String> info = new HashMap<String, String>(); info.put("Manufacturer", device.getManufacturer("en-US")); info.put("Serial Number", device.getSerialNumber()); //info.put("Name", device.get); info.put("Name", device.getFriendlyName("en-US")); return info; } }